package com.whl215.kit.adapter.wrap

import com.whl215.kit.adapter.GrapeViewHolder


/**
 * author： happiness
 * date： 2021/2/22
 * description：多类型列表的数据包装类.
 */
abstract class GrapeItemWrapper {

    /**
     * 数据与view绑定
     */
    abstract fun onBindViewHolder(holder: GrapeViewHolder, position: Int)

    /**
     * view类型 返回layoutId
     */
    abstract fun getViewType(): Int

    abstract fun  getItem(): Any
    /**
     * GridLayoutManger 时使用 返回当前数据 在列表中 一行X个
     */
    open fun getSpanSize(): Int {
        return 1
    }


    /**
     * 泛型方法 获取 实际数据对象
     */
//    fun <T> getItem(): T {
//        return item as T
//    }


}